package d3_tranfers_stream;

import java.io.*;

public class OutputStreamReaderDemo02 {
    public static void main(String[] args) {
        //目标: 字符输出转换流
        try (
                //1、創建一个字节输出流通向源文件的管道
                OutputStream os = new FileOutputStream("javapromax\\day10-io-code\\src\\陈某GBK1.txt");
                //2、通过字符转换输出把字节输出流,按照自定编码规则进行输出
                Writer osw = new OutputStreamWriter(os, "GBK");
                //3、把字符输入流包装成高级的字符输出缓冲流
                BufferedWriter bufferedWriter = new BufferedWriter(osw);//要使用子类特有的功能尽量不要使用多态--> 可能父类没这个功能就会报错
        ) {
            //进行输出
            bufferedWriter.write("一剑光寒十四州");//其实这里写的就是UTF-8记性编码规则
            bufferedWriter.newLine();//换行
            bufferedWriter.write("剑气纵横三万里");
            bufferedWriter.newLine();//换行
            bufferedWriter.write("我有一剑");
            bufferedWriter.newLine();//换行
        } catch (Exception e) {
            //进行打印堆栈信息
            e.printStackTrace();
        }
    }
}
